//
//  HMSearchBar.swift
//  01-SinaWeibo
//
//  Created by 周英培 on 16/5/20.
//  Copyright © 2016年 周英培. All rights reserved.
//

import UIKit
/*
 问题一：自定义的searchBar怎么点击没反应呢？？？  是因为设置方法设置错了，是当搜索框开始编辑时相应方法，而不是搜索框
 问题二：为什么加了动画，里面为什么还得加self，不加动画时，可以省略self，为什么？？？
 */
/*
 1.添加动画时，0.25是系统默认动画时间
 2.@IBInspectable
 3.@IBDesignable
 */
class HMSearchBar: UIView {
    
//    @IBInspectable var cornerRadius :CGFloat {
//    
//        get {
//        
//        return layer.cornerRadius
//        
//        }
//        
//        set {
//        
//        layer.cornerRadius = newValue
//        
//        }
//    
//    }

    @IBOutlet weak var cancleBtn: UIButton!
   
    
    @IBOutlet weak var rightConstraint: NSLayoutConstraint!
    
    @IBOutlet weak var searchTF: UITextField!
    
    @IBAction func cancleBtnClick(sender: AnyObject) {
      
        //添加动画
        //0.25是系统默认时间
        UIView .animateWithDuration(0.25) {
            
            //点击取消时，取消按钮被隐藏，即让🔍的右边的约束等于0⃣️
            self.rightConstraint.constant = 0
            
            //刷新视图的方法
            self.layoutIfNeeded()
          
        }
        //结束编辑状态
        self.endEditing(true)
        
//        //辞去第一响应者
//        self .resignFirstResponder()
        
    }
   
    
    //搜索框开始编辑时右边显示取消按钮，即让🔍的右边的约束等于取消按钮的宽度
    
    @IBAction func textEdit(sender: AnyObject) {
        
        UIView .animateWithDuration(0.25) {
            
            //        self.searchBarRC.constant = self.cancleBtn.bounds.width
            self.rightConstraint.constant = self.cancleBtn.bounds.width
            
            self.layoutIfNeeded()
        }
        
    }
    
    //下面这个方法是错误的
    @IBAction func secrchTF(sender: AnyObject) {
        
   
      
        
    }
    
   // 点用类方法，加载xib文件 在func前加class 就是类方法
   class func loadSearchBar() -> HMSearchBar {
    
        let searchView = NSBundle.mainBundle().loadNibNamed("HMSearchBar", owner: nil, options: nil).last as! HMSearchBar
        
        return searchView
        
    }
    
    //在此方法里面计算子控件的设置
    override func awakeFromNib() {
        //设置切角,下面这两句是错误的
//        self.searchTF.layer.cornerRadius = 20
//        
//        self.searchTF.layer.masksToBounds = true
//        searchTF.layer.cornerRadius = 20
        
        searchTF.layer.masksToBounds = true
        
        //设置边线颜色
//        searchTF.layer.borderColor = UIColor.orangeColor().CGColor
        
        //设置边线宽度
//        searchTF.layer.borderWidth = 2
        
        //MARK:设置搜索框的左边视图🔍
        //设置搜索框的宽度
//        self.bounds.size.width = UIScreen.mainScreen().bounds.size.width
        self.bounds.size.width = ScreenWidth
        
        //设置左边视图的图片
        searchTF.leftView = UIImageView(image: UIImage(named: "searchbar_textfield_search_icon"))
        
        //设置显示模式
        searchTF.leftViewMode = .Always
        
        //设置左边视图的大小
        searchTF.leftView?.frame = CGRect(x: 0, y: 0, width: 50, height: 40)
        
        //设置视图的显示模式
        searchTF.leftView?.contentMode = .Center
        
    }
    
   
    
}
